package common

import (
	"fmt"
	"gopkg.in/yaml.v2"
	"io/ioutil"
)

/**
 * 设定配置文件中的参数
 */

var Config *ConfigSet

type (
	SiteConfig struct {
		Greeting string `yaml:"greeting"` // 问候语
	}
	ConfigSet struct {
		Db    DbConfig    `yaml:"database"`
		Redis RedisConfig `yaml:"redis"`
		Site  SiteConfig  `yaml:"site"` // 站点设置
	}
)

//func InitConfig() error {
//	Config = new(ConfigSet)
//	return LoadConfig(Config)
//}

//func LoadConfig(dest interface{}, filename string) error {
//	_filename := append(filename, "app")[0]
//	data, _err := ioutil.ReadFile("./config/"+_filename+".yaml")
//	if _err != nil {
//		return errors.New("系统配置文件未找到！")
//	}
//	if err := yaml.Unmarshal(data, dest); err != nil {
//		return errors.New("系统配置文件读取失败！")
//	}
//	return nil
//}

func InitConfig(dir string)  {
	path := fmt.Sprintf("%s/common.yaml", dir)
	c, _err := ioutil.ReadFile(path)
	if _err != nil {
		panic("系统配置文件未找到！\r\npath:"+path)
	}
	Config = new(ConfigSet)
	if err := yaml.Unmarshal(c, Config); err != nil {
		panic("系统配置文件读取失败！\r\n"+err.Error())
	}
}
